function Mascara(objeto, evt, mask) {

    var LetrasU = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
    var LetrasL = 'abcdefghijklmnopqrstuvwxyz';
    var Letras  = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
    var Numeros = '0123456789';
    var Valores = '0123456789.';
    var Fixos  	= '().-:/ ';
    var Charset = " !\"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_/`abcdefghijklmnopqrstuvwxyz{|}~";

    evt = (evt) ? evt : (window.event) ? window.event : "";
    var value = objeto.value;
    if (evt) {
        var ntecla = (evt.which) ? evt.which : evt.keyCode;
        tecla = Charset.substr(ntecla - 32, 1);
        if (ntecla < 32) return true;

        var tamanho = value.length;
        if (tamanho >= mask.length) return false;

        var pos = mask.substr(tamanho,1);
        while (Fixos.indexOf(pos) != -1) {
            value += pos;
            tamanho = value.length;
            if (tamanho >= mask.length) return false;
            pos = mask.substr(tamanho,1);
        }

        switch (pos) {
            case '#' :
                if (Numeros.indexOf(tecla) == -1) return false;
                break;
            case 'A' :
                if (LetrasU.indexOf(tecla) == -1) return false;
                break;
            case 'a' :
                if (LetrasL.indexOf(tecla) == -1) return false;
                break;
            case 'Z' :
                if (Letras.indexOf(tecla) == -1) return false;
                break;
            case 'V' :
                if (Valores.indexOf(tecla) == -1) return false;
                break;
            case '*' :
                objeto.value = value;
                return true;
                break;
            default :
                return false;
                break;
        }
    }
    objeto.value = value;
    return true;
}

function soNum(objeto, evt) {
    return Numero(objeto, evt, '#########');
}

function maskCep(objeto, evt) {
    return Mascara(objeto, evt, '#####-###');
}

function maskTelefone(objeto, evt) {
    return Mascara(objeto, evt, '####-####');
}
function maskCnpj(objeto, evt) {
    return Mascara(objeto, evt, '##.###.###/####-##');
}
function maskCpf(objeto, evt) {
    return Mascara(objeto, evt, '###.###.###-##');
}
function maskDinheiro(objeto, evt) {
    return Mascara(objeto, evt, '###.###,##');
}
function maskData(objeto, evt) {
    return Mascara(objeto, evt, '##/##/####');
}
function maskDataAno(objeto, evt) {
    return Mascara(objeto, evt, '##/####');
}
function maskRg(objeto, evt) {
    return Mascara(objeto, evt, '******************************');
}
function maskTitulo(objeto, evt) {
    return Mascara(objeto, evt, '###########');
}

function maskNumeros(objeto, evt, length) {
    var s = "";
    for(n=0;n<length;n++){
        s+= "#";
    }
    return Mascara(objeto, evt, s);
}

function maskHorario(objeto, evt){
    return Mascara(objeto, evt, '##:##');
}

function maskValor(objeto, evt, length){
    var s = "";
    for(n=0;n<length;n++){
        s+= "V";
    }
    return Mascara(objeto, evt, s);
}

//ex: onblur="completaHora(this)"
function completaHora(campo){
    tamanho = campo.value.length;
    if(tamanho == 1 || tamanho == 3){
        hora = (campo.value.substring(0, 2));
        campo.value = "0" + campo.value + ":00";
    }
    if(tamanho == 2){
        campo.value += ":00";
    }
}

function formatarHora(campo, evento){
    var codTecla;
    var tamanho;
    if( document.all ) { // Internet Explorer
        codTecla = evento.keyCode;
    } else if( document.layers ) { // Netscape
        codTecla = evento.which;
    }
    else if( evento ) { // Firefox
        codTecla = evento.which;
    }
    tamanho = campo.value.length;

    if(tamanho == 1 || tamanho == 3){
        hora = (campo.value.substring(0, 2));
        campo.value = "0" + campo.value + ":00";
    }
    if(tamanho == 2){
        campo.value += ":00";
    }

    hora = (campo.value.substring(0, 2));
    minuto = (campo.value.substring(3, 5));

    if(hora.length==2) {
        if(1*hora < 1 || 1*hora >23) {
            alert("Hora inválida.");
            campo.focus();
        }
    }
    if(minuto.length==2) {
        if(1*minuto < 0 || 1*minuto > 59) {
            alert("Minuto inválido.");
            campo.focus();
        }
    }
    if( (codTecla > 47 && codTecla < 58 || codTecla == 8 || codTecla == 0) && tamanho <= 5 ){
        if( (tamanho == 2) && codTecla!=58 && codTecla != 8 && codTecla != 0){
            campo.value += ":";
        }
        return true;
    }else if(((codTecla==58) && (tamanho==2)) || (codTecla == 8 || codTecla == 0)){
        return true;
    }
    return false;
}

function retiraAcento(obj){
    palavra = String.fromCharCode(event.keyCode);

    var caracteresInvalidos = 'Ã Ã¨Ã¬Ã²Ã¹Ã¢ÃªÃ®Ã´Ã»Ã¤Ã«Ã¯Ã¶Ã¼Ã¡Ã©Ã­Ã³ÃºÃ£ÃµÃ§Ã±Ã€ÃˆÃŒÃ’Ã™Ã‚ÃŠÃŽÃ”Ã›Ã„Ã‹Ã�Ã–ÃœÃ�Ã‰Ã�Ã“ÃšÃƒÃ•Ã‡Ã‘';
    var caracteresValidos =   'aeiouaeiouaeiouaeiouaocnAEIOUAEIOUAEIOUAEIOUAOCN';
    var acento = "Â´`^Â¨~";

    if(acento.indexOf(palavra)!= -1){
        window.event.keyCode = 0;
    }

    if (caracteresInvalidos.indexOf(palavra) == -1){
        if (caracteresValidos.indexOf(palavra) != -1) {
            window.event.keyCode = 0;
            obj.value = obj.value + palavra;
        }
    }else{
        window.event.keyCode = 0;
        nova = caracteresValidos.charAt(caracteresInvalidos.indexOf(palavra));
        obj.value =  obj.value + nova;
    }
}